#include<bits/stdc++.h>

using i32 = int;
using u32 = unsigned int;
using i64 = long long;
using u64 = unsigned long long;

int main() {
	
	std::ios::sync_with_stdio(false);
	std::cin.tie(0);

	int n;
	std::cin >> n;
	std::vector<std::string> s(n);
	std::vector<int> pre(n, 0);
	for(int i = 0; i < n; i++) {
		std::cin >> s[i];
	}
	pre[0] = s[0].size();
	for(int i = 1; i < n; i++) {
		pre[i] = std::max(pre[i - 1], int(s[i].size()));
	}
	for(int i = n - 1; i >= 0; i--) {
		/*for(int j = 0; j < pre[i] - s[i].size(); j++) {
			s[i] += "*";
		}*/
		s[i].insert(s[i].size(), pre[i] - s[i].size(), '*');
	}

	for(int j = 0; j < *std::max_element(pre.begin(), pre.end()); j++) {
		std::cout << s[n - 1][j];
		for(int i = n - 2; i >= 0; i--) {
			if(s[i].size() > j) {
				std::cout << s[i][j];
			}
		}
		std::cout << "\n";
	}

	return 0;
}